package com.example.springboot.demo3;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;


@Controller  //将对象纳入容器管理
@ResponseBody  //设置访问路径
public class LoggerTest3 {
    @Value("${name}")  //读取配置文件id的格式
    // @Value("str.name")  //读取配置文件里的配置（字符串，类，list等等）
    //如果不加"${}" 就会将stt.name 传给name
    private String name;


    @RequestMapping("/saihi")  //访问路径
    public String saiHi(){
        return name+"  Hi!";
    }

    // Logger类时spring boot 提供的类，工厂模式
    private static Logger logger
            = LoggerFactory.getLogger(LoggerTest3.class);//这个参数代表日志产生的位置，一般都是传类对象！

    @RequestMapping("/log3")  //访问路径
    public void log(){
        String l="demo3";
        logger.trace("trace->"+l);
        logger.debug("debug->"+l);
        logger.info("info->"+l);
        logger.error("error->"+l);

        /*
        * trace
        * debug
        * info
        * warn
        * error
        * fatal
        * 级别上低下高，设置日志级别，比该级别高的日志都会被打印包括本级别
        *
        * */
    }
}
